Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preliminary macOS 14 (Sonoma) support #15522

Merged
merged 1 commit into from Jun 6, 2023
Merged

Preliminary macOS 14 (Sonoma) support #15522

merged 1 commit into from Jun 6, 2023

Conversation

Bo98
Copy link
Member

@Bo98 Bo98 commented Jun 5, 2023

TODO:

  • Check CLT Clang version
  • Update versions in pkgconfig for latest SDK
  • Actually runtime test macOS 14

@Bo98 Bo98 changed the title Preliminary macOS 14 support Preliminary macOS 14 (Sonoma) support Jun 5, 2023
@Bo98
Copy link
Member Author

Bo98 commented Jun 6, 2023

Apart from a timeout with copy-xattr.swift, which I'm not really convinced is a macOS 14 issue (Swift executable is a Xcode stub, and those can be really slow sometimes anyway), all tests seem to pass from what I'm told.

@Bo98 Bo98 marked this pull request as ready for review June 6, 2023 00:33
@@ -50,7 +50,9 @@ def self.latest_sdk_version

sig { returns(String) }
def self.preferred_perl_version
if version >= :big_sur
if version >= :sonoma
"5.34"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

perl -V gives me This is perl 5, version 30, subversion 3 (v5.30.3) built for darwin-thread-multi-2level.

Copy link
Member Author

@Bo98 Bo98 Jun 6, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't actually use /usr/bin/perl anymore - we now use /usr/bin/perl5.XX. I think both 5.30 and 5.34 exist.

I lean on the newer one because we got caught out with Big Sur where 5.28 and 5.30 both shipped (and 5.28 was the default) but 5.28 was removed in 11.3.

5.34 technically existed in Ventura too but /System/Library/Perl/Extras/5.34 did not, so it wasn't a full installation.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah right, makes sense. Yes, that's there and the paths in @INC exist too.

@@ -337,6 +340,7 @@ def self.update_instructions
sig { returns(String) }
def self.latest_clang_version
case MacOS.version
when "14" then "1500.0.28.1.1"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The CLT currently has this string as well.

Copy link
Member

@mistydemeo mistydemeo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested at runtime with both packages from source and Ventura binaries; looking good so far.

@Bo98 Bo98 added the critical Critical change which should be shipped as soon as possible. label Jun 6, 2023
@Bo98
Copy link
Member Author

Bo98 commented Jun 6, 2023

Will tag a new release as brew install (both bottles and source) on macOS 14 is very broken without these changes.

A new brew release after WWDC is pretty standard by now anyway.

@Bo98 Bo98 merged commit 9d0b736 into Homebrew:master Jun 6, 2023
31 checks passed
@Bo98 Bo98 deleted the macos-14 branch June 6, 2023 01:02
@Bo98
Copy link
Member Author

Bo98 commented Jun 6, 2023

Just to note here explicitly: brew typecheck will almost certainly not work. We've now reached the end of the road what is supported on Apple's builds of Ruby 2.6. If anyone needs brew typecheck on Sonoma, please use HOMEBREW_FORCE_VENDOR_RUBY=1 for now as that should continue to work regardless of the OS version due to the way we build it.

All other gems seem to still work for now. If you're upgrading an existing install with Sorbet already installed, you may need to run brew install-bundler-gems --groups= to uninstall it if an auto-bundle install is trying to update it for the new macOS.

Copy link
Member

@MikeMcQuaid MikeMcQuaid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this @Bo98!

@github-actions github-actions bot added the outdated PR was locked due to age label Jul 7, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
critical Critical change which should be shipped as soon as possible. outdated PR was locked due to age
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants